package com.yanmaohu.yulia.bean;

/**
 * @author Bright Lee
 */
public final class WithListElement {

    private int beginIndex;
    private int endIndex;
    private Identifier queryName;
    private IdentifierList withColumnList;
    private QueryExpression queryExpression;
    private SearchOrCycleClause searchOrCycleClause;

    public WithListElement(int endIndex,
                           Identifier queryName,
                           IdentifierList withColumnList,
                           QueryExpression queryExpression,
                           SearchOrCycleClause searchOrCycleClause) {
        this.beginIndex = queryName.getBeginIndex();
        this.endIndex = endIndex;
        this.queryName = queryName;
        this.withColumnList = withColumnList;
        this.queryExpression = queryExpression;
        this.searchOrCycleClause = searchOrCycleClause;
    }

    public int getBeginIndex() {
        return beginIndex;
    }

    public int getEndIndex() {
        return endIndex;
    }

    public Identifier getQueryName() {
        return queryName;
    }

    public IdentifierList getWithColumnList() {
        return withColumnList;
    }

    public QueryExpression getQueryExpression() {
        return queryExpression;
    }

    public SearchOrCycleClause getSearchOrCycleClause() {
        return searchOrCycleClause;
    }

}
